package com.ydlclass.serialize;

/**
 * 序列化器的接口
 * @Author duWenJian
 * @Date 2024/2/22 20:40
 * @Version 1.0
 */
public interface Serialize {
    /**
     * 抽象序列化方法
     * @param obj
     * @return
     */
    byte[] serialize(Object obj);

    /**
     * 反序列化方法
     * @param bytes 反序列化的字节码
     * @param clazz 目标类的class对象
     * @param <T> 目标类的泛型
     * @return 目标类实例
     */
    <T> T deserialize(byte[] bytes, Class<?> clazz);
}
